// pages/bindChange/bindChange.js
import http from "../../utils/http.js"
const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    interval: null,
    timerTxt: "获取验证码", // 计时器显示 
    timer: 60,//计数器
    mobile: "",
    code: "", // 验证码
    smsCode: "", // 接口返回的code
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.getInfo()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    return {
      title: app.globalData.shareTitle,
      path: '/pages/index/index'
    }
  },
  getCode(){
    if(this.data.timer != 60){
      return
    }
    let params = {
      mobile: this.data.mobile
    }
    http.request("/common/getSmsCode", params)
    .then(res=>{
      this.data.smsCode = res.data.code
      let interval = setInterval(() => {
        if (this.data.timer < 0) {
          clearInterval(interval)
          this.setData({
            timerTxt: "获取验证码",
            timer: 60
          })
          interval = null
          return
        }
        let timerTxt = this.data.timer + 's'
        this.data.timer--
        this.setData({
          timerTxt: timerTxt
        })
      }, 1000);
    })
    .catch(res=>{
      
    })
  },
  naviToBindChange2(){
    if (this.data.smsCode != this.data.code && this.data.code != ""){
      wx.showToast({
        title: '验证码错误',
        icon: 'none'
      })
      return
    }
    wx.redirectTo({
      url: '/pages/bindChange2/bindChange2',
    })
  },
  getInfo() {
    http.request("/home/info")
      .then(res => {
        this.setData({
          mobile: res.data.mobile,
          nickname: res.data.nickname
        })
      })
      .catch(res => {

      })
  },
  codeChange(e){
    this.setData({
      code: e.detail.value
    })
  }
})